{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Setting beer prices\n", "## Problem definition\n", "There are two bars in the paradise beach resort, Awesome Sloth and Brave Flamingo. Each one of the two bars charges its own price for a beer, either 2€, 4€, or 5€. The cost of obtaining and serving the beer can be neglected. It is expected that 60% of the tourists are relaxed and casual and choose the bars randomly regardless of the price, while 40% are more thoughtful and will go to the bar with the lowest price, and split evenly in case both bars offer the same price. \n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**a)** Consider a sample of 100 guests and represent the beer price decision-making as a game with two players where the objective is to maximise revenues" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The pay-off matrix in this case is: \n", "\n", "| BF
AS | 2€ | 4€ | 5€ | min: |\n", "|------------|---------|---------|---------|------|\n", "| 2€ | 100/100 | 140/120 | 140/150 | 100 |\n", "| 4€ | 120/140 | 200/200 | 280/150 | 120 |\n", "| 5€ | 150/140 | 150/280 | 250/250 | 150 |\n", "| min: | 100 | 120 | 150 | |\n", "\n", "Both bars would select the highest price." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**b)** Represent the beer price decision-making as a zero-sum game where the objective is to maximise the percentage of revenues per beer sales that each bar gets from the total sales in the resort and find the optimal prices in this case.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The value for each bar can be represented in percentages as:\n", "\n", "| AS/BF | 2€ | 4€ | 5€ |\n", "|-------|-------------|-------------|-------------|\n", "| 2€ | 50/50 | 53.85/46.15 | 48.27/51.72 |\n", "| 4€ | 46.15/53.85 | 50/50 | 65.11/34.88 |\n", "| 5€ | 51.72/48.27 | 34.88/65.11 | 50/50 |" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We need only to take into consideration the values of player 1 to represent it as a zero-sum game:\n", "\n", "| BF/AS | 2€ | 4€ | 5€ |\n", "|-------|-------|-------|-------|\n", "| 2€ | 50 | 53.85 | 48.27 |\n", "| 4€ | 46.15 | 50 | 65.11 |\n", "| 5€ | 51.72 | 34.88 | 50 |\n", "\n", "Now, if we calculate the minimum of each column and the maximum of each row:\n", "\n", "| BF/AS | 2€ | 4€ | 5€ | min: |\n", "|-------|-------|-------|-------|-------|\n", "| 2€ | 50 | 53.85 | 48.27 | 48.27 |\n", "| 4€ | 46.15 | 50 | 65.11 | 46.25 |\n", "| 5€ | 51.72 | 34.88 | 50 | 34.88 |\n", "| max: | 51.72 | 53.85 | 65.11 | |\n", "\n", "With the MinMax criteria, the bar Awesome Sloth will select the maximum minimum loss, that is the maximum between the minimum of each row and set a price of 2€. The bar Brave Flamingo will select the minimum maximum win, that is, the minimum across the maximum values of each column, also setting a price of 2€." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" }, "pycharm": { "stem_cell": { "cell_type": "raw", "source": [], "metadata": { "collapsed": false } } } }, "nbformat": 4, "nbformat_minor": 2 }